Streaming of video content remains a complex and difficult technical challenge. From locating videos, to head-end storage of video content, to the delivery of the requested videos, all aspects of the video streaming system must be carefully designed and implemented. The complex delivery problem is further complicated when multiple videos may be of interest to the requester or to a viewer. Again, careful techniques and algorithms must be developed in order for proper searching and for content delivery to be efficient, timely, and effective. Complex software and hardware systems are required to implement a video collection and delivery system. In such a system, the software may be stored and executed on a variety of processors.
There may be many challenges involved in a complex, user-driven, video content delivery system. For example, one difficulty might be to effectively and efficiently locate video content on the web. The results of the search may be presented as text or as still images and may include uniform resource locators (URL) for the various videos. A user may then be able to view a video by selecting a particular result returned by the search. A browser or other web enabled application may use the URL provided by the search to contact the source of the video. The source of the video may then stream the video to the user.
A typical modern personal computer may be capable of displaying more than one video simultaneously. A typical user that wants to have multiple videos playing on their computer screen simultaneously may open multiple windows of their browser and enter a different URL into each browser window so that each browser window may show a different video. Each browser window may create its own connection to a server, which may be different for the different videos, and receive its own separate video stream.
There are many sources of information about video available to a user via the internet. One example is the Internet Movie Database, www.imdb.com, although many other sources of information are available. A user may open another browser window and go to a particular information website and type in the name of the video to retrieve various types of information about a video.